package chances.epg.entity.content;

import java.util.ArrayList;
import java.util.List;

import chances.epg.entity.AccessEntity;

public class Channel extends AccessEntity implements java.io.Serializable {

	private static final long serialVersionUID = 1L;

	private Long contentId;// 内容标识
	private String contentCode;// 节目编码
	private String title; // 显示标题
	private String titleBrief; // 标题简写;
	private String serviceName;
	private String playUrl;
	private String liveCode;
	private String channelNum;
	private String icon;
	private String externalCode; // 外部编码
	private String productCode; // 产品code
	private String bizDomain;

	private String reserve1;
	private String reserve2;
	private String reserve3;
	private String reserve4;
	private String reserve5;
	
	private String areaCode;

	// 频道参数
	private List<ChannelParameter> params;
	private List<Schedule> schedules;
	
	public void addParameter(ChannelParameter param) {
		if(!this.getParams().contains(param)){
			this.getParams().add(param);
		}
	}

	/**
	 * @return the serviceName
	 */
	public String getServiceName() {
		return serviceName;
	}

	/**
	 * @param serviceName
	 *            the serviceName to set
	 */
	public void setServiceName(String serviceName) {
		this.serviceName = serviceName;
	}

	public String getExternalCode() {
		return externalCode;
	}

	public void setExternalCode(String externalCode) {
		this.externalCode = externalCode;
	}

	public String getProductCode() {
		return productCode;
	}

	public void setProductCode(String productCode) {
		this.productCode = productCode;
	}

	/**
	 * @return the contentId
	 */
	public Long getContentId() {
		return contentId;
	}

	/**
	 * @param contentId
	 *            the contentId to set
	 */
	public void setContentId(Long contentId) {
		this.contentId = contentId;
	}

	/**
	 * @return the contentCode
	 */
	public String getContentCode() {
		return contentCode;
	}

	/**
	 * @param contentCode
	 *            the contentCode to set
	 */
	public void setContentCode(String contentCode) {
		this.contentCode = contentCode;
	}

	/**
	 * @return the title
	 */
	public String getTitle() {
		return title;
	}

	/**
	 * @param title
	 *            the title to set
	 */
	public void setTitle(String title) {
		this.title = title;
	}

	/**
	 * @return the titleBrief
	 */
	public String getTitleBrief() {
		return titleBrief;
	}

	/**
	 * @param titleBrief
	 *            the titleBrief to set
	 */
	public void setTitleBrief(String titleBrief) {
		this.titleBrief = titleBrief;
	}

	/**
	 * @return the reserve1
	 */
	public String getReserve1() {
		return reserve1;
	}

	/**
	 * @param reserve1
	 *            the reserve1 to set
	 */
	public void setReserve1(String reserve1) {
		this.reserve1 = reserve1;
	}

	/**
	 * @return the reserve2
	 */
	public String getReserve2() {
		return reserve2;
	}

	/**
	 * @param reserve2
	 *            the reserve2 to set
	 */
	public void setReserve2(String reserve2) {
		this.reserve2 = reserve2;
	}

	/**
	 * @return the reserve3
	 */
	public String getReserve3() {
		return reserve3;
	}

	/**
	 * @param reserve3
	 *            the reserve3 to set
	 */
	public void setReserve3(String reserve3) {
		this.reserve3 = reserve3;
	}

	/**
	 * @return the reserve4
	 */
	public String getReserve4() {
		return reserve4;
	}

	/**
	 * @param reserve4
	 *            the reserve4 to set
	 */
	public void setReserve4(String reserve4) {
		this.reserve4 = reserve4;
	}

	/**
	 * @return the reserve5
	 */
	public String getReserve5() {
		return reserve5;
	}

	/**
	 * @param reserve5
	 *            the reserve5 to set
	 */
	public void setReserve5(String reserve5) {
		this.reserve5 = reserve5;
	}

	/**
	 * @return the icon
	 */
	public String getIcon() {
		return icon;
	}

	/**
	 * @param icon
	 *            the icon to set
	 */
	public void setIcon(String icon) {
		this.icon = icon;
	}

	public String getChannelNum() {
		return channelNum;
	}

	public void setChannelNum(String channelNum) {
		this.channelNum = channelNum;
	}

	public String getPlayUrl() {
		return playUrl;
	}

	public void setPlayUrl(String playUrl) {
		this.playUrl = playUrl;
	}

	public String getLiveCode() {
		return liveCode;
	}

	public void setLiveCode(String liveCode) {
		this.liveCode = liveCode;
	}

	public String getBizDomain() {
		return bizDomain;
	}

	public void setBizDomain(String bizDomain) {
		this.bizDomain = bizDomain;
	}

	public List<ChannelParameter> getParams() {
		if(this.params == null) {
			this.params = new ArrayList<ChannelParameter>();
		}
		return params;
	}

	public void setParams(List<ChannelParameter> params) {
		this.params = params;
	}

	public String getAreaCode() {
		return areaCode;
	}

	public void setAreaCode(String areaCode) {
		this.areaCode = areaCode;
	}

	public List<Schedule> getSchedules() {
		return schedules;
	}

	public void setSchedules(List<Schedule> schedules) {
		this.schedules = schedules;
	}
}
